
package com.jf.cloud.live.mapper;

import com.jf.cloud.live.dto.LiveUserDTO;
import com.jf.cloud.live.model.LiveUser;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 直播成员
 *
 * @author zz
 * @date 2022-08-17 17:09:06
 */
public interface LiveUserMapper {

    /**
     * 获取直播成员列表
     * @return 直播成员列表
     */
    List<LiveUser> list(@Param("liveUserDTO") LiveUserDTO liveUserDTO);

    /**
     * 根据直播成员id获取直播成员
     *
     * @param liveUserId 直播成员id
     * @return 直播成员
     */
    LiveUser getByLiveUserId(@Param("liveUserId") Long liveUserId);

    /**
     * 保存直播成员
     * @param liveUser 直播成员
     */
    void save(@Param("liveUser") LiveUser liveUser);

    /**
     * 更新直播成员
     * @param liveUser 直播成员
     */
    void update(@Param("liveUser") LiveUser liveUser);

    /**
     * 根据直播成员id删除直播成员
     * @param liveUserId
     */
    void deleteById(@Param("liveUserId") Long liveUserId);

    /**
     * 根据微信号获取直播成员个数
     * @param anchorWechat
     * @return
     */
    int countByAnchorWechat(@Param("anchorWechat")String anchorWechat);

    /**
     * 批量更新
     * @param updateLiveUsers
     */
    void updateBatch(@Param("updateLiveUsers") List<LiveUser> updateLiveUsers);

    /**
     * 批量删除
     * @param deleteUserIds
     */
    void deleteBatchByIds(@Param("deleteUserIds") List<Long> deleteUserIds);
}
